package org.squirrel.modules.bigscreen.service;

import java.util.Collection;
import java.util.List;
import java.util.Map;

import org.squirrel.common.system.base.service.SquirrelService;
import org.squirrel.modules.bigscreen.dto.KeyValue;
import org.squirrel.modules.bigscreen.entity.GaeaDict;
import org.squirrel.modules.bigscreen.entity.GaeaDictItem;

public interface GaeaDictService extends SquirrelService< GaeaDict> {

    /**
     * 刷新全部缓存
     * @param dictCodes
     */
    void refreshCache(List<String> dictCodes);


    /**
     * 获取指定字典code下拉
     * @param dictCode
     * @param language
     * @return
     */
    List<KeyValue> select(String dictCode, String language);

    /**
     * 获取所有字典项
     * @return
     */
    List<GaeaDictItem> findItems(List<String> dictCodes);
    /**
     * 获取所有 typecode
     * @param system
     * @param language
     * @return
     */
    Collection<KeyValue> selectTypeCode(String system, String language);


    /**
     * 获取所有数据字典
     * @param language
     * @return
     */
    Map<String, List<KeyValue>> all(String language);
}
